package com.group.mall.service;

import com.group.mall.domain.DTO.OrderDTO;
import com.group.mall.domain.POJO.OrderDetail;
import com.group.mall.domain.VO.OrderShowVO;
import com.group.mall.domain.VO.OrderVO;

import java.util.List;

public interface OrdersService {

    //查询所有订单
    List<OrderDetail> getAllOrders(Long userId);

    //根据订单状态查询订单
    List<OrderDetail> getOrderByStatus(Long userId, Integer status);

    //搜索订单
    List<OrderDetail> searchOrder(Long userId, String keyword);

    //更新订单状态
    Boolean updateOrderStatus(Long orderId, Integer status);

    //新增订单
    OrderShowVO addOrder(OrderDTO orderDTO);

    //取消订单
    Boolean cancelOrder(Long orderId);

    //支付订单
    Boolean pay(Long orderId);

    //退款
    Boolean refund(Long orderId);

    //删除订单记录
    Boolean delate(Long orderId);

    //确认收货
    Boolean confirm(Long orderId);
}
